package com.frame.work.frame.deal.device0faa;

import com.alibaba.fastjson.JSONObject;
import com.frame.work.common.util.JsonToMqtt;
import com.frame.work.frame.deal.base.BaseFrame;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;

import java.util.HashMap;
import java.util.Map;

/**
 *三路面板
 */
@Data
public class SanLuMianBan_0FAA0702 extends BaseFrame {

    private String spreadingType;
    private String switchState;


    public SanLuMianBan_0FAA0702(String gatewayMac, String data) {

        //将基础数据进行处理
        super(gatewayMac, data);


        //处理此设备特有的数据
        this.setSpreadingType(StringUtils.substring(data, 38, 40));
        String switchState_1 = (StringUtils.substring(data, data.length() - 6, data.length() - 4));
        String switchState_2 = (StringUtils.substring(data, data.length() - 4, data.length() - 2));
        String switchState_3 = (StringUtils.substring(data, data.length() - 2, data.length()));


        //使用数组配合for循环
        String[] switchState = {"0", switchState_1, switchState_2, switchState_3};

        //通过for循环进行八次发送数据
        String productType = this.getProductType();

        for (int i = 1; i < 4; i++) {

            this.setProductType(productType + "_" + i);
            this.setSwitchState(switchState[i]);

            //将actions信息放入json对象中
            Map<String, Object> actions = new HashMap();
            actions.put("switchState", switchState[i]);
            this.setActions(actions);


            //处理好的json对象
            String json = JSONObject.toJSONString(this);
            //将数据发送到mqtt队列中
            JsonToMqtt.mqttLianKongDevice(gatewayMac, json);

        }


    }


}
